/**
 * \file Filtre.cpp
 * \author Florian LANCE - Armand POLI
 * \version 1.0
 * \date octobre 2011
 */

#include "Filtre.h"
#include "Image.h"


#include <cassert>
#include <iostream>
#include <math.h>

/// ################################################################## CONSTRUCTEURS / DESTRUCTEURS

Filtre::Filtre(const typeFiltre _FILTRE, const double _frequence) : FILTRE(_FILTRE), frequence(_frequence)
{}

Filtre::~Filtre()
{}

void Filtre::appliquerFiltre(tab_cx &_t)
{

    double f = 0;

    for(uint i = 0; i < _t.size(); i++)
    {

        f = sqrt(pow(_t[i].real(),2) + pow(_t[i].imag(),2));

        if(FILTRE == passeHaut)
        {
            if(f > frequence)
            {
                _t[i].real(0);
                _t[i].imag(0);
            }
        }
        if(FILTRE == passeBas)
        {
            if(f < frequence)
            {
                _t[i].real(0);
                _t[i].imag(0);
            }
        }
    }
}

